The present invention relates to communications in computer networks. More specifically, it relates to the assignment of fixed Internet Protocol (IP) addresses by a Remote Access Server (RAS) of a network server device.
The Internet, a world-wide-network of interconnected computers, provides multi-media content including audio, video, and graphics, that users can access through an Internet Service Provider (ISP).
In order to access the Internet, a user, or client, must be connected to a server that provides access to the Internet. The client can be connected to a local area network (LAN) having a network server with access to the Internet. Alternatively, the client is often located at a site that is remote from the server, in which case the user typically has a modem, such as a telephone or cable modem, connected to the user""s customer premise equipment (CPE), such as a personal computer (PC). The modem is connected to a communications medium, such as the PSTN or cable system, through which the modem communicates with a modem termination system that is part of a dial-up server.
An example of a dial-up connection configuration 1 is shown in FIG. 1. In the dial-up configuration 1, a CPE 2 is connected to modem 4 that is connected to public switched telephone network (PSTN) 6. Modem 4 communicates with a network server 10 through PSTN 6. The network server 10 is, in turn, connected to internet 8 and can send and receive IP network packets.
In order to perform data communications, CPE 2 sends data packets to modem 4, which sends the data packets upstream via the communications medium of the PSTN 6 to the modem termination system on network server 10. The network server 10 then sends the data packets to appropriate hosts on the internet data network 8. The network server 10 sends response data packets from these hosts back to the modem 4 attached to the user""s CPE 2.
When a modem device initially connects to a network server, it must register with a remote access service (RAS) in the modem termination system in order to receive data over the communications connection and from a data network (e.g., the Internet or an Intranet). The modem forwards configuration information it receives in a configuration file during initialization to the modem termination system in the network server as part of a registration request message to the RAS. The modem also helps initialize and register any attached customer premise equipment with the modem termination system.
The modem termination system in the network server typically manages connections to multiple remote clients, such as CPE 2. Most of the modems are attached to host customer premise equipment, such as computers or internet telephony devices. In order to send and receive data packets to and from the Internet 8, the modem 4, CPE 2 and other network devices require an Internet Protocol (xe2x80x9cIPxe2x80x9d) network address that is dynamically assigned by the RAS in the network server. The IP is an addressing protocol well known in the art, that is designed to route traffic within a network or between networks, i.e., the Internet 8.
Many RAS systems use a Dynamic Host Configuration Protocol (xe2x80x9cDHCPxe2x80x9d) as a standard messaging protocol to dynamically allocate network addresses such as Internet Protocol (xe2x80x9cIPxe2x80x9d) addresses. DHCP is a protocol for passing configuration information to network devices on a network and is well known in the art. DHCP is designed to negotiate with a computer newly connected to the network to automatically assign the computer an IP address. The IP address is typically randomly assigned from a pool of IP addresses reserved for the subnetwork to which the newly connected computer is attached or, if the newly connected computer requests a particular IP address, DHCP tries to assign the requested IP address to the computer. See the Internet Engineering Task Force (IETF) RFC 2131 for the DHCP. Information for IETF RFCs can be found on the World Wide Web at URLs xe2x80x9cds.internic.netxe2x80x9d or www. ietf . org.
However, some network server devices, such as servers running the Windows NT operating system, by Microsoft Corporation of Redmond, Washington, can be configured to use a static IP address pool that is assigned by an RAS that does not have DHCP activated. In this case, the CPE 2 negotiates for an IP address using Internet Protocol Control Protocol (xe2x80x9cIPCPxe2x80x9d). The IPCP is defined in detail in RFC-1332, incorporated herein by reference. During IPCP negotiation, the CPE 2 negotiates an IP address with the RAS in network server 10. Within such a static IP address pool, it is often desirable that a particular IP address be assigned to a particular modem each time the modem initializes. For instance, if the modem serves an internet telephony device, such as a telephone or facsimile machine, having a particular IP address for the device can be advantageous. Also, it may be helpful to have the same IP address assigned to a remote printer device each time it connects to a network.
However, there is presently no mechanism for reserving a predetermined IP address in a fixed IP address pool for a particular user. Conventional network address servers will dynamically assign any IP address within the fixed pool, including a particular IP address needed by a particular user, to any user""s modem in the course of a dynamic assignment algorithm. The particular user, when it attempts to initialize and obtain its predetermined IP address, may find that its predetermined IP address is in use by another user.
Therefore, the need remains for a method for reserving predetermined IP addresses within a fixed IP pool for the users to which they""ve been assigned.
In accordance with a preferred embodiment of the present invention, some of the problems associated with predetermined IP Addresses in network servers are overcome.
One aspect of the invention includes a method for reserving a predetermined Internet Protocol (IP) address in a remote access server (RAS) of a network server. The method involves providing a finite series of IP addresses having a first address and a last address in sequence and specifying a first fixed address that is intermediate to the first and last addresses, where a portion of the series of IP addresses from the first fixed address to the last address comprises a fixed IP address pool and a remaining portion of the series of IP addresses comprises a dynamic IP address pool, and where the fixed IP address pool includes the predetermined IP address. The method also calls for permitting a remote client that connects to the network server to request an IP address value in an IP address request to the RAS and receiving an IP address request from a remote client. The method then calls for searching only the dynamic IP address pool for an available IP address if the IP address value in the IP address request from the remote client is a predetermined value and, if an available IP address is found, assigning it to the remote client. Finally, the method sets forth searching only the fixed IP address pool for the IP address value in the IP address request from the remote client when the IP address value in the IP address request is not the predetermined value and, if the IP address value in the IP address request is found and is available, assigning the predetermined IP address to the remote client.
The foregoing and other features and advantages of a preferred embodiment of the present invention will be more readily apparent from the following detailed description, which proceeds with references to the accompanying drawings.